package
{
	/** This is a message that may get displayed if the triggers are processed */
	public class ObjectiveOnQueue
	{
		public var id:String;
		public var trigger_cmd:String;
		public var trigger_status:String;
		public var trigger_id:String
		public var repeat_count:uint;
		public var delay_count:uint;
		// Since we may simply disable an objective, rather than removing it, we need to keep track of variables that can be reset
		public var currently_active:Boolean = true;
		public var current_repeat_count:uint = 0;
		public var current_delay_count:uint = 0;
		public var isCritical:Boolean;
		
		public function ObjectiveOnQueue(id:String, trigger_cmd:String, trigger_status:String, trigger_id:String, repeat_count:uint, delay_count:uint, isCritical:Boolean)
		{
			this.id = id;
			this.trigger_cmd = trigger_cmd;
			this.trigger_status = trigger_status;
			this.trigger_id =  trigger_id;
			this.repeat_count = repeat_count;
			this.delay_count = delay_count;
			this.isCritical = isCritical;
		}
		public function reset():void
		{
			currently_active = true;
			current_repeat_count++;
			current_delay_count = 0;			
		}
	}
}